<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Sequential dynamical system</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Sequential_dynamical_system"> <link href="./mw/ext.math.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Sequential_dynamical_system rootpage-Sequential_dynamical_system skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Sequential dynamical system</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p><b>Sequential dynamical systems</b> (<b>SDSs</b>) are a class of discrete <a href="Dynamical_systems" class="mw-redirect" title="Dynamical systems">dynamical systems</a> and generalize many aspects of for example classical <a href="Cellular_automata" class="mw-redirect" title="Cellular automata">cellular automata</a>, and provide a framework for studying asynchronous processes over <a href="Graph_theory" title="Graph theory">graphs</a>. The analysis of SDSs uses techniques from <a href="Combinatorics" title="Combinatorics">combinatorics</a>, <a href="Abstract_algebra" title="Abstract algebra">abstract algebra</a>, <a href="Graph_theory" title="Graph theory">graph theory</a>, <a href="Dynamical_system" title="Dynamical system">dynamical systems</a> and <a href="Probability_theory" title="Probability theory">probability theory</a>.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Definition">Definition</h2></div>
<p>An SDS is constructed from the following components:
</p>
<blockquote>
<ul><li>A finite <i>graph</i> <i>Y</i> with vertex set v[<i>Y</i>] = {1,2, ... , n}. Depending on the context the graph can be directed or undirected.</li>
<li>A state <i>x<sub>v</sub></i> for each vertex <i>i</i> of <i>Y</i> taken from a finite set <i>K</i>. The <i>system state</i> is the <i>n</i>-tuple <i>x</i> = (<i>x</i><sub>1</sub>, <i>x</i><sub>2</sub>, ... , <i>x<sub>n</sub></i>), and <i>x</i>[<i>i</i>] is the <a href="Tuple" title="Tuple">tuple</a> consisting of the states associated to the vertices in the 1-neighborhood of <i>i</i> in <i>Y</i> (in some fixed order).</li>
<li>A <i>vertex function</i> <i>f<sub>i</sub></i> for each vertex <i>i</i>. The vertex function maps the state of vertex <i>i</i> at time <i>t</i> to the vertex state at time <i>t</i> + 1 based on the states associated to the 1-neighborhood of <i>i</i> in <i>Y</i>.</li>
<li>A word <i>w</i> = (<i>w</i><sub>1</sub>, <i>w</i><sub>2</sub>, ... , <i>w<sub>m</sub></i>) over <i>v</i>[<i>Y</i>].</li></ul>
</blockquote>
<p>It is convenient to introduce the <i>Y</i>-local maps <i>F<sub>i</sub></i> constructed from the vertex functions by
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle F_{i}(x)=(x_{1},x_{2},\ldots ,x_{i-1},f_{i}(x[i]),x_{i+1},\ldots ,x_{n})\;.}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>F</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mo stretchy="false">(</mo>
<msub>
<mi>x</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>1</mn>
</mrow>
</msub>
<mo>,</mo>
<msub>
<mi>x</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
<mo>,</mo>
<mo>…<!-- … --></mo>
<mo>,</mo>
<msub>
<mi>x</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
<mo>−<!-- − --></mo>
<mn>1</mn>
</mrow>
</msub>
<mo>,</mo>
<msub>
<mi>f</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">[</mo>
<mi>i</mi>
<mo stretchy="false">]</mo>
<mo stretchy="false">)</mo>
<mo>,</mo>
<msub>
<mi>x</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>,</mo>
<mo>…<!-- … --></mo>
<mo>,</mo>
<msub>
<mi>x</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msub>
<mo stretchy="false">)</mo>
<mspace width="thickmathspace"></mspace>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle F_{i}(x)=(x_{1},x_{2},\ldots ,x_{i-1},f_{i}(x[i]),x_{i+1},\ldots ,x_{n})\;.}</annotation>
</semantics>
</math></span><img src="./b0297cda06442aa0a2bb3a1835cf94c5e8011fba.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:48.041ex; height:2.843ex;" alt="{\displaystyle F_{i}(x)=(x_{1},x_{2},\ldots ,x_{i-1},f_{i}(x[i]),x_{i+1},\ldots ,x_{n})\;.}" loading="lazy"></span></dd></dl>
<p>The word <i>w</i> specifies the sequence in which the <i>Y</i>-local maps are composed to derive the sequential dynamical system map <i>F</i>: <i>K<sup>n</sup> → K<sup>n</sup></i> as
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle [F_{Y},w]=F_{w(m)}\circ F_{w(m-1)}\circ \cdots \circ F_{w(2)}\circ F_{w(1)}\;.}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo stretchy="false">[</mo>
<msub>
<mi>F</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>Y</mi>
</mrow>
</msub>
<mo>,</mo>
<mi>w</mi>
<mo stretchy="false">]</mo>
<mo>=</mo>
<msub>
<mi>F</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>w</mi>
<mo stretchy="false">(</mo>
<mi>m</mi>
<mo stretchy="false">)</mo>
</mrow>
</msub>
<mo>∘<!-- ∘ --></mo>
<msub>
<mi>F</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>w</mi>
<mo stretchy="false">(</mo>
<mi>m</mi>
<mo>−<!-- − --></mo>
<mn>1</mn>
<mo stretchy="false">)</mo>
</mrow>
</msub>
<mo>∘<!-- ∘ --></mo>
<mo>⋯<!-- ⋯ --></mo>
<mo>∘<!-- ∘ --></mo>
<msub>
<mi>F</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>w</mi>
<mo stretchy="false">(</mo>
<mn>2</mn>
<mo stretchy="false">)</mo>
</mrow>
</msub>
<mo>∘<!-- ∘ --></mo>
<msub>
<mi>F</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>w</mi>
<mo stretchy="false">(</mo>
<mn>1</mn>
<mo stretchy="false">)</mo>
</mrow>
</msub>
<mspace width="thickmathspace"></mspace>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle [F_{Y},w]=F_{w(m)}\circ F_{w(m-1)}\circ \cdots \circ F_{w(2)}\circ F_{w(1)}\;.}</annotation>
</semantics>
</math></span><img src="./ca42ec3794afcdf858b2c72b17b1c5d18f8c90cc.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.171ex; width:46.227ex; height:3.176ex;" alt="{\displaystyle [F_{Y},w]=F_{w(m)}\circ F_{w(m-1)}\circ \cdots \circ F_{w(2)}\circ F_{w(1)}\;.}" loading="lazy"></span></dd></dl>
<p>If the update sequence is a permutation one frequently speaks of a <i>permutation SDS</i> to emphasize this point.
The <i>phase space</i> associated to a sequential dynamical system with map <i>F</i>: <i>K<sup>n</sup> → K<sup>n</sup></i> is the finite directed graph with vertex set <i>K<sup>n</sup></i> and directed edges (<i>x</i>, <i>F</i>(<i>x</i>)). The structure of the phase space is governed by the properties of the graph <i>Y</i>, the vertex functions (<i>f<sub>i</sub></i>)<i><sub>i</sub></i>, and the update sequence <i>w</i>. A large part of SDS research seeks to infer phase space properties based on the structure of the system constituents.
</p>
<div class="mw-heading mw-heading2"><h2 id="Example">Example</h2></div>
<p>Consider the case where <i>Y</i> is the graph with vertex set {1,2,3} and undirected edges {1,2}, {1,3} and {2,3} (a triangle or 3-circle) with vertex states from <i>K</i> = {0,1}. For vertex functions use the symmetric, boolean function nor : <i>K<sup>3</sup> → K</i> defined by nor(<i>x</i>,<i>y</i>,<i>z</i>) = (1+<i>x</i>)(1+<i>y</i>)(1+<i>z</i>) with boolean arithmetic. Thus, the only case in which the function nor returns the value 1 is when all the arguments are 0. Pick <i>w</i> = (1,2,3) as update sequence. Starting from the initial system state (0,0,0) at time <i>t</i> = 0 one computes the state of vertex 1 at time <i>t</i>=1 as nor(0,0,0) = 1. The state of vertex 2 at time <i>t</i>=1 is nor(1,0,0) = 0. Note that the state of vertex 1 at time <i>t</i>=1 is used immediately. Next one obtains the state of vertex 3 at time <i>t</i>=1 as nor(1,0,0) = 0. This completes the update sequence, and one concludes that the Nor-SDS map sends the system state (0,0,0) to (1,0,0). The system state (1,0,0) is in turned mapped to (0,1,0) by an application of the SDS map.
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Graph_dynamical_system" title="Graph dynamical system">Graph dynamical system</a></li>
<li><a href="Boolean_network" title="Boolean network">Boolean network</a></li>
<li><a href="Gene_regulatory_network" title="Gene regulatory network">Gene regulatory network</a></li>
<li><a href="Dynamic_Bayesian_network" title="Dynamic Bayesian network">Dynamic Bayesian network</a></li>
<li><a href="Petri_net" title="Petri net">Petri net</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<ul><li><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */
.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}
/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFHenning_S._Mortveit,_Christian_M._Reidys2008" class="citation book cs1">Henning S. Mortveit, Christian M. Reidys (2008). <i>An Introduction to Sequential Dynamical Systems</i>. Springer. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>978-0387306544</bdi>.</cite></li>
<li><a rel="nofollow" class="external text" href="http://www.emis.de/journals/DMTCS/pdfpapers/dmAB0106.pdf">Predecessor and Permutation Existence Problems for Sequential Dynamical Systems</a></li>
<li><a rel="nofollow" class="external text" href="https://arxiv.org/abs/math.DS/0603370">Genetic Sequential Dynamical Systems</a></li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-08-01" href="https://en.wikipedia.org/wiki/?title=Sequential_dynamical_system&oldid=1303618151">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>